A Chemical Abstract Machine for Graph Reduction
نویسنده
چکیده
Graph reduction is an implementation technique for the lazy λ-calculus. It has been used to implement many non-strict functional languages, such as lazy ML, Gofer and Miranda. Parallel graph reduction allows for concurrent evaluation. In this paper, we present parallel graph reduction as a Chemical Abstract Machine, and show that the resulting testing semantics is adequate wrt testing equivalence for the lazy λ-calculus. We also present a π-calculus implementation of the graph reduction machine, and show that the resulting testing semantics is also adequate.
منابع مشابه
A Fully Abstract Semantics for Concurrent Graph Reduction
This paper presents a fully abstract semantics for a variant of the untyped λ-calculus with recursive declarations. We first present a summary of existing work on full abstraction for the untyped λ-calculus, concentrating on ABRAMSKY and ONG’s work on the lazy λ-calculus. ABRAMSKY and ONG’s work is based on leftmost outermost reduction without sharing. This is notably inefficient, and many impl...
متن کاملA Calculus for Interaction Nets Based on the Linear Chemical Abstract Machine
Interaction nets are graph rewriting systems which are a generalisation of proof nets for classical linear logic. The linear chemical abstract machine (CHAM) is a term rewriting system which corresponds to classical linear logic, via the Curry-Howard isomorphism. We can obtain a textual calculus for interaction nets which is surprisingly similar to linear CHAM based on the multiplicative fragme...
متن کاملDistributed Implementation of Programmed Graph Reduction
Programmed graph reduction has been shown to be an eecient implementation technique for lazy functional languages on sequential machines. Considering programmed graph reduction as a generalization of conventional environment-based implementations where the activation records are allocated in a graph instead of on a stack it becomes very easy to use this technique for the execution of functional...
متن کاملIndependent AND-Parallel Narrowing
We present a parallel graph narrowing machine, which is used to implement a functional logic language on a shared memory multiprocessor. It is an extension of an abstract machine for a purely functional language. The result is a programmed graph reduction machine which integrates the mechanisms of uniication, backtracking, and independent and-parallelism. In the machine, the subexpressions of a...
متن کاملIndependent AND-Parallel Implementation of Narrowing
Abs t r ac t . We present a parallel graph narrowing machine, which is used to implement a functional logic language on a shared memory multiprocessor. It is an extensión of an abstract machine for a purely functional language. The result is a programmed graph reduction machine which integrates the mechanisms of unification, backtracking, and independent and-parallelism. In the machine, the sub...
متن کامل